package dominio

import applicationModel.JardinZen
import java.util.HashSet
import java.util.Set
import org.uqbar.commons.utils.Observable

@Observable
class Jugador {
	@Property String nombre
	@Property Integer dinero
	@Property JardinZen jacuatico
	@Property JardinZen jterrestre
	@Property Set<Planta> plantas

	new() {

		//	this.start
		dinero = dineroInicial
		plantas = new HashSet<Planta>
		jacuatico = new JardinZen
		jterrestre = new JardinZen
		jacuatico.iniciarAgua
		jterrestre.iniciarTierra
		what

	}

	def void what() {
		jacuatico.plantas.forEach[p|this.plantas.add(p)]
		jterrestre.plantas.forEach[p|this.plantas.add(p)]
	}

	def Integer dineroInicial() {
		300
	}

	def void recompensaDinero(Integer puntos) {
		dinero = getDinero + puntos
	}

	/*def boolean tienePlanta(Planta planta) {
		if (planta == null) {
			false
		} else {
			(jacuatico.tiene(planta) || jterrestre.tiene(planta))
		}
	}*/
	/*def agrega(Planta planta) {
		if (planta.tipo.equals("tierra")) {
			jterrestre.plantaAAgregar = planta
			jterrestre.agregar()
		} else {
			jacuatico.plantaAAgregar = planta
			jacuatico.agregar()
		}

	}*/
	def recompensaPlanta(Planta planta) {
		if (planta.tipo.equals("agua")) {
			jacuatico.plantas.add(planta)
		} else {
			jterrestre.plantas.add(planta)
		}
		what
	}
/*def start() {
		jacuatico.iniciarAgua
		jterrestre.iniciarTierra
	}*/
}
